A storage array includes a storage controller and a storage device. With development of storage technologies, a storage device that supports a data compression function emerges, for example, a solid state disk (SSD) or a shingled magnetic recording (SMR) hard disk. After receiving data sent by the storage controller in the storage array, the storage device that supports the data compression function compresses the data, and writes compressed data into a storage medium.
To make distribution of data in the storage device more proper, the storage controller collates the data stored in the storage device, that is, the storage controller reads the data from the storage device, and then writes the data into a new physical address of the storage device. When receiving a data read instruction sent by the storage controller, the storage device needs to first read the compressed data from the storage medium, decompress the compressed data, and send, to the storage controller, data obtained from the decompression operation. This results in low data collation efficiency.